package com.project.service.impl;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.project.bean.ProficientBean;
import com.project.dao.IProficientDao;
import com.project.service.IProficientService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

/**
 * @author RJ
 * @date 2022/9/15 10:40
 */
@Service
@Transactional
public class ProficientServiceImpl extends ServiceImpl<IProficientDao, ProficientBean> implements IProficientService {

    @Override
    public void addProficient(ProficientBean proficientBean) {
        this.save(proficientBean);
    }

    @Override
    public void delProficient(Integer proficientId) {
        this.removeById(proficientId);
    }

    @Override
    public ProficientBean getProficientInfo(Integer proficientId) {
        return this.getById(proficientId);
    }

    @Override
    public void updProficient(Integer proficientId, String proficientJob, String proficientPhone,
                              String proficientWorkUnit, String proficientEmail) {
        this.baseMapper.updProficient(proficientId, proficientJob, proficientPhone, proficientWorkUnit, proficientEmail);
    }

    @Override
    public IPage<ProficientBean> cutProficientByItem(Integer pageNo, Integer pageSize,
                                                     String proficientName, String proficientSpeciality, String proficientWorkUnit) {
        Page<ProficientBean> page = new Page<>(pageNo, pageSize);
        IPage<ProficientBean> iPage = this.baseMapper.cutProficientByItem(page, proficientName, proficientSpeciality, proficientWorkUnit);
        return iPage;
    }
}
